Distributed ledger systems (DLSs), which can also be referred to as consensus networks, and/or blockchain networks, enable participating entities to securely, and immutably store data. DLSs are commonly referred to as blockchain networks without referencing any particular use case. An example of a type of blockchain network can include consortium blockchain networks provided for a select group of entities, which control the consensus process, and includes an access control layer.
A trusted execution environment (TEE) is an isolated and secure area of a microprocessor that guarantees that software instructions and data executing or stored within the microprocessor have not been compromised or altered. Applications executed inside the TEE are verified by a trusted authority (e.g., the manufacture of the microprocessor), and issued encryption keys upon verification to allow communication between the application and other nodes and trusted applications. These encryption keys can be issued by a centralized key management system (KMS) which facilitates the verification of the application with the trusted authority (also referred to as “attestation”).
One potential issue with a centralized KMS is the introduction of a single point of failure. An outage in the centralized KMS can prevent applications executing in TEEs from being verified until it is resolved. Further, an attacker may be able to compromise the system as a whole by gaining control of the centralized KMS. A secure, distributed system functioning as a KMS would thus be desirable.